package org.jeecg.modules.travel.vo.likes;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.modules.travel.vo.attractionFile.AttractionFileVo;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
public class AppLikeRecordVo {

    /**主键*/
    @Schema(description = "主键")
    private String id;
    /**创建人*/
    @Schema(description = "创建人")
    private String createBy;
    /**创建日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "创建日期")
    private Date createTime;
    /**更新人*/
    @Schema(description = "更新人")
    private String updateBy;
    /**更新日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "更新日期")
    private Date updateTime;
    /**所属部门*/
    @Schema(description = "所属部门")
    private String sysOrgCode;
    /**用户id*/
    @Schema(description = "用户id")
    private String userId;
    /**点赞类型：0-景区，1-反馈*/
    @Dict(dicCode = "like_content_ype")
    @Schema(description = "点赞类型：0-景区，1-反馈")
    private String contentType;
    /**点赞类型对应id*/
    @Schema(description = "点赞类型对应id")
    private String contentId;
    /**点赞时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "点赞时间")
    private Date likeTime;
    /**景点名称*/
    @Schema(description = "景点名称")
    private String attractionName;
    /**主题*/
    @Dict(dictTable = "jh_theme", dicText = "theme_name", dicCode = "id")
    @Schema(description = "主题")
    private String attractionTheme;
    /**描述*/
    @Schema(description = "描述")
    private String attractionDescription;
    /**建议游览时长（分钟）*/
    @Schema(description = "建议游览时长（分钟）")
    private Integer attractionRecommendedDuration;
    /**最大承载量*/
    @Schema(description = "最大承载量")
    private Integer attractionCapacity;
    /**热门景点 0否 1是*/
    @Schema(description = "热门景点 0否 1是")
    private Integer isFeatured;
    /**热度*/
    @Schema(description = "热度")
    private Integer attractionHeat;
    /**状态 0-开放 1-维修 2-临时关闭*/
    @Dict(dicCode = "scenic_spot_status")
    @Schema(description = "状态 0-开放 1-维修 2-临时关闭")
    private Integer attractionStatus;
    /**营业时间*/
    @Schema(description = "营业时间")
    private String businessHour;
    /**国*/
    @Schema(description = "国")
    private String attractionCountry;
    /**省份*/
    @Schema(description = "省份")
    private String attractionProvince;
    /**城市*/
    @Schema(description = "城市")
    private String attractionCity;
    /**县/市/区*/
    @Schema(description = "县/市/区")
    private String attractionDistrict;
    /**区域编码*/
    @Schema(description = "区域编码")
    private String areaCode;
    /**景区地址*/
    @Schema(description = "景区地址")
    private String attractionAddress;
    /**经度*/
    @Schema(description = "经度")
    private BigDecimal longitude;
    /**纬度*/
    @Schema(description = "纬度")
    private BigDecimal latitude;
    /**联系人名称*/
    @Schema(description = "联系人名称")
    private String contactName;
    /**联系电话*/
    @Schema(description = "联系电话")
    private String contactPhone;
    /**官网网站*/
    @Schema(description = "官网网站")
    private String website;
    /**距离*/
    @Schema(description = "距离")
    private BigDecimal distance;
    /**点赞量*/
    @Schema(description = "点赞量")
    private Integer likeCount;
    /**图片*/
    @Schema(description = "图片")
    private List<AttractionFileVo> imgFile;
    /**音频*/
    @Schema(description = "音频")
    private List<AttractionFileVo> MpFile;
    /**视频*/
    @Schema(description = "视频")
    private List<AttractionFileVo> videoFile;


}
